#pragma once

#include "BaseState.h"
class BitmapTextObject;
class TalkingDialogueBox;

enum MainMenuOptions
{
	MAIN_MENU_PLAY,
	MAIN_MENU_OPTIONS,
	MAIN_MENU_EXIT,
	MAIN_MENU_TOTAL_OPTIONS
};

class MainMenuState : public BaseState
{
private:
	int m_nCurrentMenuOption;

	//Main Menu BitMap text options
	BitmapTextObject* m_pOptions[MAIN_MENU_TOTAL_OPTIONS];
	TalkingDialogueBox* pBox;
	BaseObject2D* m_pCursor;

private:
	MainMenuState(void);
	MainMenuState(MainMenuState&);
	~MainMenuState(void);
	MainMenuState& operator=(MainMenuState&);

public:
	static MainMenuState* GetInstance() { static MainMenuState instance; return &instance; }
	
	virtual void Init();
	virtual void Update(float _dt);
	virtual void Render();
	virtual void Shutdown();
};
